home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-12-24 | 43.8 KB | 1,376 lines |
- ;;;; Hey Emacs, this script might as well be -*- lisp -*-
- ;;;;
- ;;;; Install_AmiTCP - AmiTCP/IP installation script for Installer
- ;;;;
- ;;;; Copyright © 1994 AmiTCP/IP Group,
- ;;;; NSDi - Network Solutions Development Inc., Finland
- ;;;; All rights reserved.
- ;;;;
- ;;;; $Id: Install_AmiTCP,v 4.22 1994/12/23 08:20:32 jraja Exp $
- ;;;;
- ;;;; This script has been tested with Installer 1.24:
- ;;;;
- ;;;; Installer and Installer project icon
- ;;;; (c) Copyright 1991-93 Commodore-Amiga, Inc. All Rights Reserved.
- ;;;; Reproduced and distributed under license from Commodore.
- ;;;;
- ;;;; INSTALLER SOFTWARE IS PROVIDED "AS-IS" AND SUBJECT TO CHANGE;
- ;;;; NO WARRANTIES ARE MADE. ALL USE IS AT YOUR OWN RISK. NO LIABILITY
- ;;;; OR RESPONSIBILITY IS ASSUMED.
- ;;;;
- ;;;; Use following Icon tooltypes / Command line options:
- ;;;; APPNAME=AmiTCP/IP
- ;;;; MINUSER=AVERAGE
- ;;;;
- (welcome " Welcome to the " @app-name " 4.1 installation.\n")
- ;;;;
- ;;;; What we are?
- ;;;;
- (set app-name (cat @app-name " 4.1"))
-
- ;;;;
- ;;;; "Needs"
- ;;;;
- (set need-version 37 ; version of operating system need by AmiTCP/IP
- need-memory (* 512 1024)
-
- AmiTCP-release-number 4 ; this release
- )
- (set
- ;;;
- ;;; Installation disk names
- ;;;
- install-disk1-name "AmiTCP-41_Install#1:"
- install-disk2-name "AmiTCP-41_Install#2:"
- ;;;
- ;;; Used pkt-files, source-dir will remain on the disk from which the
- ;;; installer was started!
- ;;;
- AmiTCP-pkt-file (tackon install-disk1-name "AmiTCP.pkt")
- Docs-pkt-file (tackon install-disk2-name "AmiTCPdocs.pkt")
- GNUEmacs-pkt-file (tackon install-disk2-name "GNUEmacs.pkt")
- NapsaFonts-pkt-file (tackon install-disk2-name "NapsaFonts.pkt")
- SDK-pkt-file (tackon install-disk2-name "AmiTCP-sdk-41.pkt")
- ;;;
- ;;; Other sources on installation disks
- ;;;
- dist-networks-dir (tackon install-disk2-name "Devs/Networks")
- Installer-file (tackon install-disk1-name "bin/Installer")
- UnPkt-file (tackon install-disk1-name "UnPkt")
- LICENSE-file (tackon install-disk1-name "LICENSE")
- README-FIRST-file (tackon install-disk1-name "README.FIRST")
- GNUEmacs-readme-file (tackon install-disk2-name "GNUEmacs.readme")
- SDK-readme-file (tackon install-disk2-name "AmiTCP-sdk-41.readme")
-
- ;;;
- ;;; Destination directories of the AmiTCP/IP
- ;;;
- atcp-name "AmiTCP"
- atcp-assign (cat atcp-name ":") ; Assign to AmiTCP
- ;; Configuration
- conf-dir (tackon atcp-assign "db")
- ;; User binaries
- bin-dir (tackon atcp-assign "bin")
- ;; documentation
- doc-dir (tackon atcp-assign "doc")
- ;; devices directory
- devs-dir (tackon atcp-assign "devs")
- ;; AmigaGuide documentation
- help-dir (tackon atcp-assign "help")
- ;; DOS handlers
- l-dir (tackon atcp-assign "l")
- ;; libraries
- libs-dir (tackon atcp-assign "libs")
- ;; daemons
- serv-dir (tackon atcp-assign "serv")
- ;; source
- src-dir (tackon atcp-assign "src")
- ;; includes for net applications
- include-dir (tackon atcp-assign "netinclude")
- ;; network link libraries
- lib-dir (tackon atcp-assign "netlib")
- ;;
- ;; The source directory name
- source-dir (if (= 1 (exists @icon))
- (pathonly (expandpath @icon))
- (expandpath @icon))
- ;; Mounts
- apipe-mount (cat
- "Assign APIPE: Exists > NIL:\n"
- "IF Warn\n"
- " Mount APIPE: from AmiTCP:devs/APipe-Mountlist\n"
- "EndIf\n")
- )
- ;; How to get needed information?
- (set
- net-setup-help
- " You can get this information from your network administration.\n")
-
- ;;; copy "more" to ram: to be able to use it
- (set
- ; pager-cmd (if (exists "ENV:PAGER" (noreq)) (getenv "PAGER"))
- pager-cmd
- ; (if pager-cmd pager-cmd
- (if (exists "SYS:Utilities/More" (noreq))
- ((copyfiles
- (prompt "Copying sys:utilities/more to ram: for use")
- (source "SYS:Utilities/More")
- (dest "RAM:")
- (safe)
- (optional "nofail"))
- "RAM:More")
- ("more"))
- ; )
- )
-
- ;; Return old AmiTCP: assign if we are aborting
- (onerror
- (if old-atcp-directory
- (makeassign atcp-name old-atcp-directory)))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- check-system-version
- ;; is your Exec recent enough?
- (set exec-version (/ (getversion) 65536))
- (transcript "Running on exec version " exec-version ".")
- (if (< exec-version need-version) ; check operating system version
- ((message "The " @app-name " needs at least Exec version " need-version
- " to run.\nYou have only version " exec-version ".\n"
- "You can proceed with the installation, but consider "
- "installing the " @app-name " with proper version of "
- "the operating system."
- (help
- " The " @app-name " uses some system functions "
- "that are not present or functional in earlier system "
- "versions. Consider updating your system.\n"
- " If you have a later version of operating system "
- "and are only now using older version: be sure to use "
- "only release 2.04 or newer with the " @app-name ". "
- "No damage happens if you run the " @app-name " with an "
- "earlier operating system, however. It just "
- "refuses to start.\n"
- " If you decide to continue, no changes will be made to "
- "system startup files, so you must edit them yourself. "
- "Refer instructions for manual installation."))
- (transcript "User decided to continue installation while running "
- "on operating system release earlier than 2.04."))))
-
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- check-available-memory
- ;;
- (transcript "Checking available memory.")
- (set avail-mem (+ (database "total-mem")))
- (if (< avail-mem need-memory)
- ((message "Your system has only " (/ avail-mem 1024) " kilobytes of "
- "free memory, while the " @app-name " needs at least "
- (/ need-memory 1024) " to be useful.\n"
- "You can continue the installation but be warned!")
- (transcript "User decided to continue installation while available "
- "memory was below the recommended minimum."))))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- check-user-level
- ;;
- (transcript "Checking user level.")
- (if (< @user-level 1)
- ((transcript "Installation aborted due to too low user level.")
- (abort "AmiTCP/IP installation requires at least the \"average\" "
- "user level. Restart installation and select appropriate user "
- "level."))))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- check-old-assign
- ;; If there is already the AmiTCP/IP installed, store the assign
- ;; to old-atcp-directory
- (transcript "Checking for already installed AmiTCP.")
- (set old-atcp-directory
- (if (exists atcp-assign (noreq))
- (getassign atcp-name)
- ""))
- (if old-atcp-directory
- (transcript "Existing AmiTCP detected at directory "
- old-atcp-directory ".")))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-
- ; Simple database "emulator" for testing purposes
- (procedure
- database-test "68000")
-
- (procedure
- check-cpu-type
- (set cpu-type (database "cpu"))
- ; (set cpu-type (database-test))
- (set cpu-is-020-or-better
- (AND (<> cpu-type "68000")
- (<> cpu-type "68010")))
- )
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ask-accept-license ;; Ask if the user accepts license conditions
- (transcript "Asking if the user accepts the license conditions.")
- ;;
- ;; use "more" to show the full license text
- ;;
- (run (cat "run " pager-cmd) LICENSE-file (safe))
- (message "\nAmiTCP/IP is a copyrighted propiertary software of "
- "the Network Solutions Development Inc.\n"
- "\nPlease read the shown license text carefully.\n"
- "\nBy proceeding the installation of this software you "
- "indicate that you accept the license conditions.\n\n"
- "Also note that you should fill in your registration card "
- "and send the filled card to NSDi using the included "
- "return-envelope.\n"
- )
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- select-destination-directory
- ;; Select destination directory for the installation.
- ;; This is the floppy install-version
- ;;
- (transcript "Selecting destination directory for the installation.")
- (while
- ((set @default-dest
- (askdir
- (prompt "Select directory where to install the " app-name ".")
- (help " Here you can specify location where to install "
- "the " app-name ".\n"
- " Installation must NOT be made on top of an older "
- "version of the " @app-name ".")
- (newpath)
- (default (cat (getdevice "SYS:") ":"))
- ))
- (if (= 2 (exists @default-dest))
- ;; check that installation is not tried over an old version
- (if (OR (exists (tackon @default-dest "bin/AmiTCP")) ; version 1.0
- (> AmiTCP-release-number
- (if (exists (tackon @default-dest "AmiTCP"))
- (getversion (tackon @default-dest "AmiTCP"))
- $7FFFFFFF)))
- ((message "You are possibly trying to install the " @app-name " "
- "over an old version of it.\n"
- "It is not allowed.\n"
- "You should select some other directory or abort "
- "the installation.")
- 1)
- 0)
- ((makedir @default-dest
- (infos))
- 0))))
-
- ;; Make the AmiTCP: assign
- (makeassign atcp-name @default-dest)
- (if (NOT (= 2 (exists (tackon atcp-assign "devs"))))
- (makedir (tackon atcp-assign "devs")))
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;
- ;; This is floppy-install version
- ;;
- ;; arguments:
- ;;
- ;; unpkt-source - the source archive
- ;; unpkt-destination - the destination directory
- ;; unpkt-sdp - number of directories to strip
- ;; unpkt-title-name - descriptative name of the archive
- ;; unpkt-title-not - installation unit name
-
- (procedure
- run-unpkt
- ;;
- (if (exists unpkt-source)
- ((transcript "Dearchiving " unpkt-source " files to " unpkt-destination ".")
- (working "Writing files to " unpkt-destination "...")
- (if (run (cat unpkt-cmd " "
- "\"" unpkt-source "\" "
- "\"" unpkt-destination "\""
- " SDP=" unpkt-sdp
- " >\"CON:10/10/600/100/UnPkt Output/INACTIVE/AUTO\" "))
- (abort " UnPkt could not dearchive the " unpkt-source ". "
- "This may be due to:\n"
- " 1) Not enough disk space\n"
- " 2) Not enough memory\n"
- " 3) Corrupted archive\n"
- " 4) Corrupted UnPkt\n"))
- 1)
- ((transcript unpkt-source " could not be located, and is NOT installed!")
- (message "\nWARNING\n\n"
- "Could not locate the " unpkt-title-name " archive.\n"
- unpkt-title-not " is NOT installed!")
- 0))
- )
-
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;
- ;; This is floppy-install version
- ;;
- (procedure
- copy-files-to-destination ;;; UnPkt AmiTCP/IP files to the destination
- ;;
-
- (set
- unpkt-source AmiTCP-pkt-file
- unpkt-destination @default-dest
- unpkt-sdp 1
- unpkt-title-name "AmiTCP/IP program"
- unpkt-title-not "AmiTCP/IP"
- )
- (if (run-unpkt)
- (
- ;;
- ;; Copy the Installer
- ;;
- (copyfiles
- (source Installer-file)
- (dest bin-dir)
- (files)
- (infos))
-
- ;;
- ;; Create AmiTCP:log if it does not exist already
- ;;
- (if (NOT (= 2 (exists (tackon atcp-assign "log"))))
- (makedir (tackon atcp-assign "log")))
- ;;
- ;; Create AmiTCP:log/wtmp if it does not exist already
- ;; (This is to avoid unnecessary errors from the ftpd)
- ;;
- (if (NOT (= 1 (exists (tackon atcp-assign "log/wtmp"))))
- (textfile (dest (tackon atcp-assign "log/wtmp"))))
- ;;
- ;; Add script flags to the scripts, pure flags to pure programs
- ;;
- ; (protect (tackon bin-dir "ch_nfsctl") "+s +e")
- ; (protect (tackon bin-dir "netstat") "+s +e")
- ; (protect (tackon bin-dir "SynClock") "+s +e")
- ; (protect (tackon bin-dir "stopnet") "+s +e")
- ; (if (exists src-dir)
- ; ((protect (tackon src-dir "compile") "+s +e")
- ; (protect (tackon src-dir "compile.lib") "+s +e")))
- ; (protect (tackon bin-dir "NapsaTerm") "+p +e")
- ; (protect (tackon serv-dir "in.fingerd") "+p +e")
- ; (if (exists (tackon bin-dir "rcsrev"))
- ; (protect (tackon bin-dir "rcsrev") "+p +e"))
-
- (ask-use-020-binaries)
-
- ;; Install the docs...
- (set
- unpkt-source Docs-pkt-file
- unpkt-destination @default-dest
- unpkt-sdp 1
- unpkt-title-name "AmiTCP/IP documentation"
- unpkt-title-not "Documentation"
- )
- (if (run-unpkt)
- (if (or (or (>= exec-version 39)
- (exists "SYS:Utilities/multiview"))
- (> @user-level 1))
- (if (askbool
- (prompt
- "AmigaGuide utility is used to view the included "
- "AmigaGuide documents in \"AmiTCP:help/\" directory.\n\n"
- "Would you like to use MultiView instead?")
- (help
- "Installer has detected that your operating system should "
- "include the MultiView utility, which you might want to "
- "use instead of AmigaGuide utility to show the online "
- "documentation."))
- ((set multiview-path
- (if (exists "SYS:Utilities/multiview")
- "SYS:Utilities/multiview"
- (askfile
- (prompt "Please show where the MultiView utility "
- "can be found:")
- (help "The MultiView utility could not be located "
- "from it's normal location "
- "(\"SYS:Utilities/multiview\"), so you need "
- "to tell the location of the utility. Give "
- "an empty name to cancel the operation.\n")
- (default "SYS:Utilities/")
- ))
- )
- (if (= 1 (exists multiview-path))
- (foreach
- help-dir "#?.info"
- (tooltype
- (dest
- (tackon
- help-dir
- (substr
- @each-name 0 (- (strlen @each-name) 5))))
-
- (setdefaulttool multiview-path)))))
- )))
- ;; AmiTCP/IP program archive installed succesfully
- 1)
- 0))
-
- (procedure
- ask-use-020-binaries
- (if cpu-is-020-or-better
- (if (askbool
- (prompt "Your CPU is of type " cpu-type ", thus the '020 "
- "version of AmiTCP (AmiTCP.020) should be renamed to "
- "\"AmiTCP\" (The '000 binary will be kept as "
- "\"AmiTCP.000\").\n\nShall this be done?\n")
- (help "You have an option to determine which AmiTCP binary "
- "version should be used. The selection is left to you "
- "for you to be able to switch to either of the binaries "
- "if there happens to be problems with the other.")
- )
- ;; rename AmiTCP to AmiTCP.000 and AmiTCP.020 to AmiTCP
- ((rename (tackon atcp-assign "AmiTCP")
- (tackon atcp-assign "AmiTCP.000"))
- (rename (tackon atcp-assign "AmiTCP.020")
- (tackon atcp-assign "AmiTCP"))
- )
- )
- ;; Delete the '020 binaries, if not '020 or higher
- (if (askbool
- (choices "Delete" "Do not delete")
- (prompt "Your CPU is of type " cpu-type ", thus the '020 "
- "version of AmiTCP could be deleted from your disk. "
- "If you later upgrade your CPU, you should "
- "re-install " @app-name ".\n")
- (help "The '020 binary can be deleted to save your disk space."))
- (delete (tackon atcp-assign "AmiTCP.020")
- (optional "force")))
- ))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- update-devices
- (transcript "Updating Sana-II device drivers.")
- ;;
- ;; Create directory DEVS:Networks if it does not exist already
- ;;
- (if (NOT (= 2 (exists "DEVS:Networks")))
- (makedir "DEVS:Networks"))
- ;;
- ;; Copy each driver in the distribution to the DEVS:Networks if necessary
- ;;
- (working "Checking Sana-II device drivers...")
- (if (= 2 (exists dist-networks-dir))
- (foreach
- dist-networks-dir "#?.device"
- ((set dist-name (tackon dist-networks-dir @each-name)
- devs-name (tackon "DEVS:Networks" @each-name)
- dist-version (getversion dist-name)
- copy-it (NOT (exists devs-name)))
- ;;
- ;; Check if the driver should be copied over
- ;;
- (if (NOT copy-it)
- (set copy-it
- ; or if the driver in DEVS:Networks is of older version
- (< (set devs-version (getversion devs-name)) dist-version)))
- (if (NOT copy-it)
- (set copy-it
- ; or if the files are of the same version but different
- (set sum-differs (if (= dist-version devs-version)
- (<> (getsum dist-name)
- (getsum devs-name))
- 0))))
- (if copy-it
- (copyfiles
- (prompt "Should this Sana-II driver be installed in Devs:Networks?\n"
- (if devs-version
- (cat "A driver with the same name exists already"
- (if sum-differs
- (cat ", it has the same version, but the "
- "files are not the same.")
- (cat ", but the driver in the "
- "DEVS:Networks is of older version.")))
- ""))
- (help
- " The Sana-II drivers should be located in "
- "the DEVS:Networks directory.\n"
- " This directory is the official location for the Sana-II "
- "device drivers.")
- (source (pathonly dist-name))
- (choices (fileonly dist-name))
- (dest "DEVS:Networks")
- (files)
- (optional "nofail" "askuser")
- (confirm "average")))))
- (message "No Sana-II drivers found on the installation disk")
- )
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ask-update-devices
- (if (= 2 (exists dist-networks-dir))
- (if (askbool
- (prompt "\nDo you want to update your Sana-II network device "
- "drivers?\n"
- "Each copy will be confirmed.")
- (help
- " Each new AmiTCP/IP distribution usually contains "
- "updated versions of some of the provided Sana-II network "
- "device drivers. If you choose \"Yes\", this installation "
- "script will check for each device, if this is the case."))
- (update-devices)
- (transcript "User did not want to update Sana-II drivers."))
- (transcript "Directory " dist-networks-dir " not found.")))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;
- ;; arguments:
- ;;
- ;; uus::commands - commands to add
- ;; uus::section - section name
- ;; uus::file - file name into which to save the changes if needed
- ;;
- (procedure
- update-user-startup
- (set uus::complete (cat ";BEGIN " uus::section "\n"
- uus::commands
- ";END " uus::section "\n"))
- (if (askbool
- (prompt "\nDo you want Installer to make the required changes to "
- "your S:User-Startup script?\n"
- "\n(There is a problem with Installer making these "
- "changes if you do not have the original boot volume "
- "mounted. Installer may crash or corrupt your system "
- "in that case.)")
- (help "If you do not want Installer make the changes, it will "
- "create a script file containing commands which you should "
- "add to the S:User-Startup file."))
- ;; Do the addition
- ((set startup-changed 1)
- (startup
- uus::section
- (command uus::commands)
- (prompt "Installer will modify your S:User-Startup file. "
- "Following lines will be appended to it:\n\n"
- uus::complete)
- (help " Installer needs to make indicated modifications to "
- "your user startup file.\n"
- " You should make modifications later by hand "
- "if you skip this part.")))
- ;; Let user add commands
- ((textfile (dest uus::file)
- (append uus::complete))
- (message "Installer created file " uus::file
- ", which you should add to your startup file by hand. "
- "The file includes following changes:\n\n"
- uus::complete))))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ask-copy-old-configuration
- ;;
- ;; Copy old configuration files
- ;; Returns TRUE if AmiTCP does not need to be configured.
- ;; The reconfiguration is forced if old AmiTCP version is not 4 or higher,
- ;; since the bin/startnet must be modified.
- ;;
- (set
- edit-change-fingerd "t:edit-change-fingerd"
- old-conf-dir (tackon old-atcp-directory "db")
- old-resolv.conf (tackon old-conf-dir "resolv.conf")
- old-startnet (tackon old-atcp-directory "bin/startnet")
- old-motd (tackon old-conf-dir "motd"))
- ;;
- ;; return version of the old AmiTCP detected
- ;;
- (procedure
- get-old-atcp-version
- (if (exists (tackon old-atcp-directory "AmiTCP") (noreq))
- (/ (getversion (tackon old-atcp-directory "AmiTCP")) 65536)
- 0))
- ;;
- (set old-atcp-version (get-old-atcp-version))
- ;;
- ;; following is called only if old version is high enough
- ;;
- (procedure
- copy-old-startnet
- (if (exists old-startnet)
- (message "Your old \"startnet\" file cannot be used by the new "
- @app-name " because the structure of it "
- "has changed. This means that you will need "
- "to provide most of the configuration information after the "
- "installation.")
- ; ((if (>= @user-level 2)
- ; (message "\nCopying file\n\n"
- ; old-startnet " \n"
- ; "\nto directory \"" @default-dest "\"."))
- ; (copyfiles
- ; (source old-startnet)
- ; (dest bin-dir)
- ; (files))
- ; 1 ; succeeded
- ; )
- )
- 0) ; need to configure
- ;;
- (procedure
- copy-rest-config
- (copyfiles
- (prompt
- "Select configuration files you want to copy from old configuration")
- (help
- " You may copy your old configuration files or use untouched files "
- "came with the new distribution.")
- (source old-conf-dir)
- (dest conf-dir)
- (files)
- (confirm)
- (if (AND (exists (tackon old-conf-dir "networks"))
- (AND (exists (tackon old-conf-dir "ftpdir"))
- (exists (tackon old-conf-dir "ftpusers"))))
- (choices ; release 4.0 or later
- "AmiTCP.config"
- "ch_nfstab"
- "ftpdir"
- "ftpusers"
- "group"
- "inet.access"
- "inetd.conf"
- ; "interfaces"
- "hosts"
- "networks"
- "resolv.conf"
- "services"
- "protocols"
- "passwd"
- "rpc")
- (if (exists (tackon old-conf-dir "inet.access"))
- (choices ; release 3.0 beta 2 or later
- "AmiTCP.config"
- "ch_nfstab"
- "group"
- "inet.access"
- "inetd.conf"
- "hosts"
- "services"
- "protocols"
- "passwd"
- "rpc")
- (if (exists (tackon old-conf-dir "interfaces"))
- (choices ; release 3.0 beta 1 or later
- "AmiTCP.config"
- "group"
- "inetd.conf"
- "hosts"
- "services"
- "protocols"
- "passwd"
- "rpc")
- (if (exists (tackon old-conf-dir "passwd"))
- (choices ; release 2.2 or later
- "AmiTCP.config"
- "group"
- "inetd.conf"
- "hosts"
- "services"
- "protocols"
- "passwd")
- (choices ; an old release
- "AmiTCP.config"
- "inetd.conf"
- "hosts"
- "services"
- "protocols")))))
- (optional "nofail" "force" "askuser")))
- ;;
- (procedure
- copy-motd
- (if (exists old-motd)
- ((if (>= @user-level 2)
- (message "\nCopying file\n\n"
- old-motd "\n"
- "(Message Of The Day)\n"
- "\nto directory \"" conf-dir "\"."))
- (copyfiles
- (source old-motd)
- (dest conf-dir)
- (files)))))
- ;;
- ;; Following is currently not needed, since if old version is too old, we
- ;; force user to reconfigure AmiTCP anyway
- ;;
- (procedure
- update-startnet
- (set startnet-file (tackon bin-dir "startnet"))
- (if (run (cat "search search \"Mount TCP:\" quiet from " startnet-file)
- (safe))
- ((textfile (dest startnet-file)
- (include startnet-file)
- (append tcp-mount "\n")
- (prompt
- "\nDo you want to mount TCP: device at network startup?")
- (help
- " The " @app-name " includes a DOS handler for TCP "
- "communications. This DOS handler will usually be mounted "
- "at the network startup.")
- (confirm))
- (protect (tackon bin-dir "startnet") "+s +e"))))
- (procedure
- update-services
- (set service-file (tackon conf-dir "services"))
- (if (run (cat "search search \"amiganetfs\" quiet from " service-file)
- (safe))
- (;; Not found, add it
- (textfile (dest service-file)
- (include service-file)
- (append ";\n; Amiga specific services\n;\n"
- "amiganetfs 2500/tcp\n")
- (prompt
- "Do you want to add AmigaNetFS service to your "
- "service database?")
- (help
- " The " @app-name " includes NetFS, network file system "
- "between Amigas, by Timo Rossi. It is a TCP based protocol "
- "which requires both ends of connection have same service "
- "(TCP port) entries. If you already had NetFS installed "
- "you probably do not want to update your service "
- "database.")
- (confirm)))))
- (procedure
- update-hosts
- (set hosts-file (tackon conf-dir "hosts"))
- (if (run (cat "search search \"localhost\" quiet from " hosts-file)
- (safe))
- (;; Not found, add it
- (transcript "Adding 'localhost' entry to the db/hosts.")
- (textfile (dest hosts-file)
- (include hosts-file)
- (append ";\n; Entry for the localhost\n;\n"
- "127.0.0.1 localhost\n")
- ))))
- (procedure
- update-inetd-conf
- ;; Change fingerd to serv/in.fingerd
- (set inetd-conf (tackon atcp-assign "db/inetd.conf"))
- (if (run (cat "search search \"serv/in.fingerd\" quiet from " inetd-conf)
- (safe))
- ((textfile
- (dest edit-change-fingerd)
- (append
- "f b/finger stream/\n"
- "e -amitcp:bin/fingerd-amitcp:serv/in.fingerd-\n"
- "m+"
- "i"
- "# NetFS, a networking support between Amigas"
- "# Remove # from the next line to enable NetFS"
- "#amiganetfs stream tcp nowait root amitcp:serv/netfs-server"
- "Z"
- "w\n")
- (safe))
- (run (cat "c:edit from " inetd-conf " with "
- edit-change-fingerd " >t:what-changed")
- (confirm)
- (prompt "\nUpdate \"inetd.conf\" to use the " @app-name " services?")
- (help " The fingerd service daemon is moved to directory "
- "\"AmiTCP:serv\", and \"inetd.conf\" must be updated to use "
- "it. Also the NetFS must be added to old configuration")))))
- ;;
- (procedure
- update-napsaprefs
- (set old-napsaprefs
- (if (exists (tackon old-atcp-directory "db/NapsaPrefs") (noreq))
- (tackon old-atcp-directory "db/NapsaPrefs")
- (if (exists "s:NapsaPrefs")
- "s:NapsaPrefs")
- ""))
- (if old-napsaprefs
- (;;
- (copyfiles
- (source old-napsaprefs)
- (dest conf-dir)
- (files)
- (confirm)
- (prompt "\nUse your old Napsaterm preferences?")
- (help " Installer have found an existing NapsaPrefs file "
- old-napsaprefs ". You can copy it to new configuration "
- "directory.")))))
- (procedure
- copy-extra-binaries
- "")
- (transcript "Ready to copy old configuration.")
- (if (askbool
- (default 1)
- (prompt
- "\nDo you want to use settings from an earlier installation?")
- (help
- " Installer have detected existing configuration "
- "directory \"" old-conf-dir "\" which "
- "can be used to configure the " app-name ". You can keep most "
- "of your previous configuration. This is important if you have "
- "installed extra applications.\n"
- (if (< old-atcp-version 4)
- (cat " However, since the configuration practice of the "
- @app-name " has changed since your old version, you must "
- "reconfigure the " @app-name " itself. Sorry for the "
- "incovenience.\n")
- (cat " Installer will copy your \"" old-startnet "\" script and "
- "\"" old-resolv.conf "\" configuration.\n"))
- " Other configuration files will be then "
- (if (> @user-level 1)
- "optionally")
- " copied.\n"))
- ((set no-reconfig (if (>= old-atcp-version 4)
- (copy-old-startnet)))
- (copy-rest-config)
- (copy-motd)
- (update-inetd-conf)
- (update-hosts)
- (update-services)
- ;; (update-startnet)
- (update-napsaprefs)
- (copy-extra-binaries)
- no-reconfig) ;; FALSE if AmiTCP needs to be reconfigured
- 0))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- install-emacstcp
- ;; is GNU Emacs installed?
- (if (exists "GNUEmacs:" (noreq)) ; check if GNUEmacs is installed
-
- ((set
- unpkt-source GNUEmacs-pkt-file
- unpkt-destination "GNUEmacs:"
- unpkt-sdp 1
- unpkt-title-name "GNU Emacs support"
- unpkt-title-not "GNU Emacs support"
- )
- (if (run-unpkt)
- ;; Tell user what to do with .emacs
- (run (cat "run " pager-cmd)
- GNUEmacs-readme-file
- (safe))
- )
- )
- (message "GNU Emacs must be installed before....")))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- install-napsaterm
- ;;
- ;; Install Napsaterm fonts
- ;;
- ;; Ask for directory to install fonts.
- (procedure
- ask-napsa-font-dir
- (askdir
- (prompt "Select directory where to install Napsaterm fonts.\n")
- (help " Here you can specify location where to install "
- "the Napsaterm font called `napsa'. "
- "This directory should be in your font path "
- "(i.e. some directory in the assign fonts:).")
- (newpath)
- (default "fonts:")))
-
- (set
- unpkt-source NapsaFonts-pkt-file
- unpkt-destination (ask-napsa-font-dir)
- unpkt-sdp 1
- unpkt-title-name "NapsaTerm fonts"
- unpkt-title-not "NapsaTerm special fonts"
- )
- (run-unpkt)
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ;;
- ;; Check if user exists in the user database
- ;;
- ;; takes the user name in ::user-name
- ;;
- does-user-exist
- (if (run (cat "search " (tackon conf-dir "passwd") " \"" ::user-name "|\" NONUM ")
- (safe))
- 0
- 1)
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ;;
- ;; Add a new user into AmiTCP:db/passwd
- ;;
- add-new-user
- (if (= anu::setdefaults 0)
- (set
- anu::passwd (tackon conf-dir "passwd")
- anu::passwd-new (cat anu::passwd ".new")
- anu::passwd-old (cat anu::passwd ".old")
- anu::tempfile "t:run-the-password"
- anu::helptext (cat " You must give an login name, user ID, group ID "
- "real name and home directory for each user.\n")
- anu::setdefaults 1
- anu::username (cat default-user-name)
- anu::UID 100
- anu::GID 100
- anu::realname ""
- anu::homedir "HOME:"
- anu::shell "shell"))
- (while
- ((set anu::username
- (askstring
- (default anu::username)
- (prompt "Enter the login name of the new user:\n")
- (help anu::helptext
- " The login name consists of lowercase letters a-z "
- "and numbers. Its recommended maximum length is 8 "
- "characters.\n"
- " Examples of acceptable login names are `ppessi' "
- "and `an345'.")))
- (set ::user-name anu::username)
- (if (does-user-exist)
- ((message "User " anu::username " already exists.")
- 1))))
- (set anu::UID
- (asknumber
- (default anu::UID)
- (prompt (cat "Enter the user ID of the user " anu::username ":\n"))
- (help anu::helptext
- " The user ID is a numeric unique identifier for each "
- "user. "
- "It is a number between 100 - 32767 for ordinary users.\n")))
- (set anu::GID
- (asknumber
- (default anu::GID)
- (prompt (cat "Enter the primary group ID of the user "
- anu::username ":\n"))
- (help anu::helptext
- " The group ID is a numeric identifier of groups. "
- "Each user has a primary group, which is usually 100, "
- "group \"users\".\n")))
- (set anu::realname
- (askstring
- (default anu::realname)
- (prompt (cat "Enter the real name of the user " anu::username ":\n"))
- (help anu::helptext
- " The real name can contain any characters except "
- "comma (`,'), colon (`:') or bar (`|').")))
- (set anu::homedir
- (askdir
- (default anu::homedir)
- (prompt (cat "Give the home directory of the user " anu::username ":\n"))
- (help anu::helptext
- " When user logs in, the current directory is changed to"
- "her home directory. Also, the finger information (.plan"
- "and .project) is retrieved from home directory.")
- (newpath)))
- (set anu::shell
- (askstring
- (default anu::shell)
- (prompt (cat "Enter the name of command interpreter for the user "
- anu::username ":\n"))
- (help anu::helptext
- " The command interpreter value can be either "
- "`shell' or `cli'.")))
- (set anu::passwd-entry
- (cat anu::username "||" anu::UID "|" anu::GID "|"
- anu::realname "|" anu::homedir "|" anu::shell "\n"))
- (if (askbool
- (prompt (cat "Are you sure you want to add following user:\n\n"
- "Login name: " anu::username "\n"
- "User ID: " anu::UID "\n"
- "Group ID: " anu::GID "\n"
- "Real name: " anu::realname "\n"
- "Home directory: " anu::homedir "\n"
- "Shell: " anu::shell "\n"))
- (choices (cat "Add " anu::username) (cat "Skip " anu::username))
- (help "You can still skip creating the new user."))
- ((textfile (dest anu::passwd-new)
- (include anu::passwd)
- (append anu::passwd-entry))
- (copyfiles (source anu::passwd)
- (dest conf-dir)
- (newname "passwd.old")
- (optional "askuser"))
- (copyfiles (source anu::passwd-new)
- (dest conf-dir)
- (newname "passwd")
- (optional "askuser"))
- (textfile (dest anu::tempfile)
- (append (cat
- "failat 5000\n"
- "avail flush >nil:\n"
- (tackon bin-dir "login") " " anu::username "\n"
- (tackon bin-dir "passwd") " " anu::username "\n"
- "endshell\n"))
- (safe))
- (run (cat "newshell from " anu::tempfile))
- (set anu::username ""
- anu::UID (+ anu::UID 1)
- anu::realname "")
- 1))
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ;;
- ;; Add a new users into AmiTCP:db/passwd
- ;;
- add-new-users
- (while
- (askbool (prompt "\nDo you want to create a new user account?\n"
- "\nYou will be logged in with the new account "
- "immediately to set the password.")
- (choices "Proceed" "Cancel")
- (help " You are about to add a new users into user database. "
- "Remember that the user id of each user must be unique! "
- "You will be logged in with the new user account to "
- "set the password for the new user.\n"))
- (add-new-user))
- )
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ;;
- ;; Ask for the default user
- ;;
- ask-default-user
- (if (= adu::setdefaults 0)
- (set
- adu::setdefaults 1
- default-user-name ""))
- (while (= default-user-name "")
- (while
- ((set default-user-name
- (askstring
- (default default-user-name)
- (prompt "Enter the default user name\n")
- (help " The AmiTCP/IP can handle currently only one user "
- "at a time. The default user is selected with `login' "
- "command by system startup script. ")))
- (set ::user-name default-user-name)
- (if (NOT (does-user-exist))
- (NOT (add-new-user))))))
- )
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- ;;
- ;; Install passwd and group databases
- ;;
- install-user-databases
- (transcript "Installing user databases")
- (procedure get-mufs-version
- (set mufs-vernum (getversion "multiuser.library" (resident)))
- (set mufs-ver (/ mufs-vernum 65536))
- (set mufs-rev (- mufs-vernum (* ver 65536))))
- (procedure passwd-create
- (copyfiles
- (prompt "Copying " passwd-source " to AmiTCP:db/passwd.")
- (source passwd-source)
- (dest conf-dir)
- (newname "passwd")
- (optional "nofail")))
- (procedure group-create
- (copyfiles
- (prompt "Copying " group-source " to AmiTCP:db/group.")
- (source group-source)
- (dest conf-dir)
- (newname "group")
- (optional "nofail")))
-
- (set passwd-source (tackon conf-dir "passwd-example"))
- (set group-source (tackon conf-dir "group-example"))
- (if (>= @user-level 2)
- (message
- "\n"
- "Copying user database from file"
- "\n\n\"" passwd-source "\"\n\n"
- "and group database from file"
- "\n\n\"" group-source "\"\n\n"))
- (passwd-create)
- (group-create)
- )
-
- (procedure
- set-must-reboot
- (if (<> (getversion "netinfo.device" (resident)) 0)
- ((set netinfo-temp-file "t:netinfo-expunge-script")
- (textfile (dest netinfo-temp-file)
- (append (cat
- "failat 5000\n"
- "avail flush >nil:\n"
- "avail flush >nil:\n"))
- (safe))
- (execute netinfo-temp-file)))
- (if (<> (getversion "netinfo.device" (resident)) 0)
- ((set must-reboot-after-install 1)
- (message "You seem to have some parts of an old " @app-name
- " installation running. Because of this the user "
- "database updating will have no effect before you reboot "
- "your Amiga.\n\n"
- "For this reason you _must_ reboot after the installation "
- "and before the \"Config_AmiTCP\" is run."))))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;
- ;;; Ask which parts to install
- ;;;
- ;;; on return following variables will have boolean values:
- ;;;
- ;;; do-install-amitcp
- ;;; do-install-drivers
- ;;; do-install-emacstcp
- ;;; do-install-napsafonts
- ;;;
- (procedure
- ask-install-options
- (set
- install-options-bitmap
- (askoptions
- (prompt "Select parts to install:\n\n"
- "See the help for explanation on each item.")
- (choices "AmiTCP/IP"
- "Updated Sana-II network drivers"
- "GNU Emacs support"
- "NapsaTerm fonts"
- "AmiTCP/IP Software Development Kit"
- )
- (default (if (exists "GNUEmacs:" (noreq))
- %00111
- %00011))
- (help " AmiTCP/IP: "
- "The AmiTCP/IP itself. This includes binaries, help files and "
- "example configuration files.\n"
- " Updated Sana-II network drivers: "
- "If this option is checked, the Sana-II drivers in Devs:Networks "
- "will be updated. You will be asked for confirmation for each driver.\n"
- " GNU Emacs support: "
- "AmiTCP/IP provides an Emacs extension, which makes "
- "it possible to run networking programs with it. To enable "
- "this feature some files need to be installed "
- "in to directories under \"GNUEmacs:\". "
- "NOTE: This option has effect only if GNU Emacs is currently installed.\n"
- " NapsaTerm fonts: "
- "NapsaTerm has special fonts, that are sized 6×11 pixels and contain "
- "some special VT102 characters. They are suitable for interlaced "
- "screens. If you have normal NTSC or PAL screen, it might be better "
- "to not install these fonts but use Topaz/8 instead.\n"
- " AmiTCP/IP Software Development Kit (SDK): "
- "AmiTCP/IP programmer's include files and libraries. This is offered "
- "as a free bonus in this release. The SDK currently supports only "
- "SAS/C, but many if it's files can be used with other compilers as "
- "well.\n"
- ))
- do-install-amitcp (in install-options-bitmap 0)
- do-install-drivers (in install-options-bitmap 1)
- do-install-emacstcp (in install-options-bitmap 2)
- do-install-napsafonts (in install-options-bitmap 3)
- do-install-sdk (in install-options-bitmap 4)
- ))
-
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;
- ;;; Install AmiTCP/IP
- ;;;
- (procedure
- install-amitcp
- (select-destination-directory)
- (if (copy-files-to-destination) ; copy AmiTCP/IP files
- (
- ;; update user-startup
- (set uus::commands (cat "assign " atcp-assign " " @default-dest "\n"
- "path " bin-dir " add\n"
- apipe-mount)
- uus::section @app-name
- uus::file (tackon atcp-assign "addition-to-user-startup"))
- (update-user-startup))
- ))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (procedure
- install-sdk
- (set sdk-dest-dir
- (askdir
- (prompt "Select the directory in which the SDK should be placed:")
- (help " The SDK subdirectories will be placed on the directory you "
- "select.\n")
- (newpath)
- (default @default-dest)))
- (if (NOT (= 2 (exists (sdk-dest-dir))))
- (makedir sdk-dest-dir (infos)))
-
- ((set
- unpkt-source SDK-pkt-file
- unpkt-destination sdk-dest-dir
- unpkt-sdp 1
- unpkt-title-name "Software Development Kit"
- unpkt-title-not "The SDK"
- )
- (if (run-unpkt)
- (
- ;; add assigns to user-startup
- (set uus::commands
- (cat "assign netinclude:" (tackon sdk-dest-dir "netinclude") "\n"
- "assign netlib:" (tackon sdk-dest-dir "netlib") "\n"
- (if (<> (expandpath atcp-assign)
- (expandpath sdk-dest-dir))
- (cat "path " (tackon sdk-dest-dir "bin") " add\n")
- ""))
- uus::section (cat @app-name " SDK")
- uus::file (tackon atcp-assign "addition-to-user-startup-SDK"))
- (update-user-startup)
- ;; Show the SDK readme file
- (run (cat "run " pager-cmd) SDK-readme-file (safe)))
- )))
-
- ;;; copy "UnPkt" to RAM: if available
- ;;
- ;; If UnPkt is not found, then we are not started from the installation disk
- ;;
- ;;;
- (procedure
- set-unpkt-cmd
- (set unpkt-cmd
- (if (exists UnPkt-file)
- ((copyfiles
- (prompt "Copying packet dearchiver to RAM:")
- (source UnPkt-file)
- (dest "RAM:")
- (safe)
- (optional "nofail"))
- "RAM:UnPkt")
- "")))
-
- ;;;;;
- ;
- ; Launch Config_AmiTCP
- ;
- (procedure
- run-config-amitcp
- (set start-config-script "t:start-config-script")
- (textfile
- (dest start-config-script)
- (append
- ".key foo\n.bra {\n.ket }\n\n"
- "cd " atcp-assign "\n"
- "Stack 20000 ; Installer needs this\n"
- (tackon bin-dir "Installer")
- " SCRIPT Config_AmiTCP APPNAME AmiTCP/IP MINUSER AVERAGE\n"
- )
- (safe))
- (protect start-config-script "+s +e")
- (if (askbool
- (prompt "\nStart \"Config_AmiTCP\" to configure the just "
- "installed " @app-name "?")
- (help @app-name " should be configured after the installation. "
- "If you do not want to do the configuration now, you must "
- "do it later by starting the \"Config_AmiTCP\" from the "
- "WorkBench icon.\n"))
- (execute start-config-script)))
-
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;
- ;;; Installatation sequence
- ;;;
-
- ;
- ; Initialize "global" variables to default values (not complete)
- ;
- (set
- startup-changed 0
- must-reboot-after-install 0
- )
-
- (complete 00) (transcript "On making " app-name ".")
- (complete 01) (check-user-level)
- (complete 02) (check-system-version)
- (complete 03) (check-available-memory)
- (complete 04) (check-old-assign)
- (complete 05) (check-cpu-type)
-
- ; askdisk for the install-disk1-name?? maybe later...
-
- ; show the README-FIRST file if it exists
- (if (exists README-FIRST-file)
- ((run (cat "run " pager-cmd) README-FIRST-file (safe))
- (message " Please read the shown \"README.FIRST\" file carefully "
- "before continuing the installation.")))
-
- ;
- ; Check if started from the installation disk
- ;
- ;(if (= (expandpath source-dir) install-disk1-name)
- ; (
- (set-unpkt-cmd)
- (if (= unpkt-cmd "")
- (abort " UnPkt command not present on the installation disk!"))
-
- (complete 08) (ask-accept-license) ; ask if user accepts the license
- (complete 10) (ask-install-options)
- (complete 15) (if do-install-amitcp (install-amitcp))
- (complete 30) (if do-install-sdk (install-sdk))
- (complete 25) (if do-install-emacstcp (install-emacstcp))
- (complete 30) (if do-install-napsafonts (install-napsaterm))
- (complete 35) (if do-install-drivers (update-devices))
- (if do-install-amitcp ; Ask if old configuration should be copied
- (
- (set-must-reboot)
- (set old-conf-used
- (if old-atcp-directory
- (if (exists (tackon old-atcp-directory "bin/startnet")
- (noreq))
- ((complete 40)
- (ask-copy-old-configuration)))))
- ;;
- ;; Install user databases if not copied from an old configuration
- ;;
- (if (exists (tackon conf-dir "passwd"))
- (transcript "There is already a user database.")
- ((complete 70)
- (install-user-databases))) ; install passwd/group
- ;;
- ;; Configure AmiTCP/IP is necessary
- ;;
- (complete 90)
- (if (AND (NOT must-reboot-after-install) (NOT old-conf-used))
- ;;
- ;; Spawn the installer on the Config_AmiTCP with
- ;; correct options
- (run-config-amitcp)
- ;(configure-amitcp)
- )
- ))
- ;; show something
- (foreach atcp-assign "#?.readme"
- (run (cat "run " pager-cmd) (tackon atcp-assign @each-name)
- (safe)))
- ; )
- ; ( ;; Not started from the installation directory
- ; ;; Started from an unknown directory
- ; (abort " The installation was started from an invalid directory.\n"
- ; " If you want to re-install some parts of the " @app-name
- ; " installation, "
- ; "please start the \"Install_AmiTCP\" from the installation disk.")
- ; )
- ; )
-
- ;;; All done!
- (complete 100)
- (exit (if startup-changed
- (cat "You should reboot your Amiga to enable the changes made "
- "to system startup files.")
- (cat "You must add the contents of the file(s) \""
- "addition-to-user-startup#?\" to your S:User-Startup and "
- "reboot before you can use " @app-name ".\n"))
- (if must-reboot-after-install
- (cat "\nYou MUST reboot before configuring " @app-name ". Start "
- "\"Config_AmiTCP\" from WorkBench after the reboot "
- "to configure your new " @app-name " installation.\n")))
-
- ; EOF
-